import { request } from "../../request/index.js"

Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 左侧菜单数据
    lefeMenuList:[],
    // 右侧菜单数据
    rightContent:[],
    // 左侧被点击的菜单
    currentIndex:0,
    // 右侧菜单轮动条到顶部距离
    scrollTop:0
  },

  Cates:[],

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // 性能优化（加载数据过大）
    // 1.判断本地存储中有没有旧数据
    const logCates = wx.getStorageSync("cates");
    // 2.没有 ---> 发送新数据到本地存储
    if(!logCates){
      this.getCates();
    }else{
      // 3.有 ---> 是否过期
      if(Date.now() - logCates.time > 1000 * 60 * 5){
        this.getCates();
      }else{
      // 4.没有 ---> 用旧数据 
        this.Cates = logCates.data;
        let lefeMenuList = this.Cates.map(v => v.cat_name);
        let rightContent = this.Cates[0].children;
        this.setData({
          lefeMenuList,
          rightContent,
      })
      }
    }
    


  },

  async getCates(){
    // request({url: '/categories'})
    // .then(result =>{
    //   this.Cates = result;

    //   // 将数据存入本地存储中
    //   wx.setStorageSync("cates",{time:Date.now(),data:this.Cates});

    //   let lefeMenuList = this.Cates.map(v => v.cat_name);
    //   let rightContent = this.Cates[0].children;
    //   this.setData({
    //     lefeMenuList,
    //     rightContent
    //   })
    // })

    const res = await request({url: '/categories'});
    this.Cates = res;
      // 将数据存入本地存储中
      wx.setStorageSync("cates",{time:Date.now(),data:this.Cates});

      let lefeMenuList = this.Cates.map(v => v.cat_name);
      let rightContent = this.Cates[0].children;
      this.setData({
        lefeMenuList,
        rightContent
      })
  },

  // 左侧菜单点击事件
  handleItemTap(e){
    let currentIndex = e.currentTarget.dataset.index
    let rightContent = this.Cates[currentIndex].children;
    this.setData({
      currentIndex,
      rightContent,
      scrollTop:0

    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})